```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>性能优化与瓶颈排查指南</title>
    <link href="https://cdn.staticfile.org/font-awesome/6.4.0/css/all.min.css" rel="stylesheet">
    <link href="https://cdn.staticfile.org/tailwindcss/2.2.19/tailwind.min.css" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net/npm/mermaid@latest/dist/mermaid.min.js"></script>
    <style>
        body {
            font-family: 'Noto Sans SC', Tahoma, Arial, Roboto, "Droid Sans", "Helvetica Neue", "Droid Sans Fallback", "Heiti SC", "Hiragino Sans GB", Simsun, sans-serif;
            color: #333;
            line-height: 1.8;
        }
        h1, h2, h3, h4 {
            font-family: 'Noto Serif SC', serif;
            font-weight: 600;
        }
        .hero-gradient {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }
        .card-hover {
            transition: all 0.3s ease;
        }
        .card-hover:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        }
        .highlight-box {
            border-left: 4px solid #667eea;
            background-color: #f8fafc;
        }
        .tooltip:hover .tooltip-text {
            opacity: 1;
            visibility: visible;
        }
        .mermaid-tooltip {
            background-color: white;
            border: 1px solid #e2e8f0;
            border-radius: 0.375rem;
            padding: 0.5rem;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            max-width: 300px;
        }
    </style>
</head>
<body class="bg-gray-50">
    <!-- Hero Section -->
    <div class="hero-gradient text-white py-20 px-4 sm:px-6 lg:px-8">
        <div class="max-w-4xl mx-auto text-center">
            <h1 class="text-4xl md:text-5xl font-bold mb-6">性能优化与瓶颈排查的艺术</h1>
            <p class="text-xl md:text-2xl opacity-90 mb-8">科学系统地提升应用性能，打造极致用户体验</p>
            <div class="flex justify-center space-x-4">
                <a href="#basics" class="px-6 py-3 bg-white text-indigo-700 font-medium rounded-lg hover:bg-opacity-90 transition">开始探索</a>
                <a href="#strategies" class="px-6 py-3 border border-white text-white font-medium rounded-lg hover:bg-white hover:bg-opacity-10 transition">优化策略</a>
            </div>
        </div>
    </div>

    <!-- Main Content -->
    <div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
        <!-- Introduction -->
        <div class="mb-16">
            <p class="text-lg text-gray-700 leading-relaxed">
                在软件开发中，性能优化与瓶颈排查是不可忽视的重要环节。随着用户需求的增加和系统复杂性的提升，性能问题可能会在不经意间影响到应用的稳定性和用户体验。因此，如何高效地进行性能优化与瓶颈排查，成为了每一个开发人员必须掌握的技能。
            </p>
        </div>

        <!-- Basics Section -->
        <section id="basics" class="mb-20">
            <h2 class="text-3xl font-bold mb-8 flex items-center">
                <span class="bg-indigo-100 text-indigo-800 w-10 h-10 rounded-full flex items-center justify-center mr-4">1</span>
                性能优化的基础
            </h2>
            
            <p class="mb-6 text-gray-700">
                性能优化并不是单纯的代码修改或增加硬件资源，而是要通过科学的方法来系统化地提升应用的响应速度和资源利用率。为了达到优化的目的，首先需要理解性能瓶颈的概念和定位方法。优化工作通常分为以下几个阶段：
            </p>

            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-bullseye text-indigo-500 mr-3"></i>
                        1.1 确定性能目标
                    </h3>
                    <p class="text-gray-700 mb-4">
                        优化的第一步是明确目标：优化哪些方面的性能。性能优化并非一味追求速度，而是要根据实际需求来进行权衡。
                    </p>
                    <ul class="space-y-2">
                        <li class="flex items-start">
                            <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                            <span>降低响应时间：提升用户操作的响应速度</span>
                        </li>
                        <li class="flex items-start">
                            <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                            <span>提高吞吐量：增加系统能够处理的请求数量</span>
                        </li>
                        <li class="flex items-start">
                            <i class="fas fa-check-circle text-green-500 mt-1 mr-2"></i>
                            <span>减少资源消耗：优化内存、CPU、磁盘等硬件资源的使用</span>
                        </li>
                    </ul>
                </div>

                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-chart-line text-indigo-500 mr-3"></i>
                        1.2 性能测试与基准分析
                    </h3>
                    <p class="text-gray-700 mb-4">
                        在进行性能优化之前，首先要明确现有系统的性能瓶颈。可以使用一些性能测试工具获取系统的性能基准数据。
                    </p>
                    <div class="grid grid-cols-2 gap-2">
                        <span class="bg-gray-100 px-3 py-1 rounded-full text-sm flex items-center">
                            <i class="fas fa-tools text-gray-500 mr-1"></i> JMeter
                        </span>
                        <span class="bg-gray-100 px-3 py-1 rounded-full text-sm flex items-center">
                            <i class="fas fa-tools text-gray-500 mr-1"></i> LoadRunner
                        </span>
                        <span class="bg-gray-100 px-3 py-1 rounded-full text-sm flex items-center">
                            <i class="fas fa-tools text-gray-500 mr-1"></i> Gatling
                        </span>
                        <span class="bg-gray-100 px-3 py-1 rounded-full text-sm flex items-center">
                            <i class="fas fa-tools text-gray-500 mr-1"></i> Benchmark
                        </span>
                    </div>
                </div>
            </div>

            <!-- Visualization -->
            <div class="bg-white p-6 rounded-xl shadow-sm mb-12">
                <h3 class="text-xl font-semibold mb-6 text-center">性能优化流程</h3>
                <div class="mermaid">
                    graph TD
                    A[识别性能问题] --> B[建立基准指标]
                    B --> C[性能测试]
                    C --> D[瓶颈分析]
                    D --> E[优化实施]
                    E --> F[验证效果]
                    F -->|未达标| D
                    F -->|达标| G[监控维护]
                </div>
            </div>
        </section>

        <!-- Bottlenecks Section -->
        <section id="bottlenecks" class="mb-20">
            <h2 class="text-3xl font-bold mb-8 flex items-center">
                <span class="bg-indigo-100 text-indigo-800 w-10 h-10 rounded-full flex items-center justify-center mr-4">2</span>
                常见性能瓶颈的识别
            </h2>
            
            <p class="mb-8 text-gray-700">
                性能瓶颈是指在某个环节或组件中，系统的性能出现了限制，导致整体性能下降。瓶颈的排查通常涉及从硬件、网络、数据库、代码等多个方面入手。
            </p>

            <div class="grid md:grid-cols-2 lg:grid-cols-4 gap-6 mb-12">
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <div class="w-12 h-12 bg-red-100 rounded-lg flex items-center justify-center mb-4">
                        <i class="fas fa-microchip text-red-500 text-xl"></i>
                    </div>
                    <h3 class="text-xl font-semibold mb-3">硬件瓶颈</h3>
                    <p class="text-gray-700 text-sm">
                        CPU、内存、磁盘等硬件资源不足导致的性能限制，可通过监控工具识别。
                    </p>
                </div>
                
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <div class="w-12 h-12 bg-blue-100 rounded-lg flex items-center justify-center mb-4">
                        <i class="fas fa-network-wired text-blue-500 text-xl"></i>
                    </div>
                    <h3 class="text-xl font-semibold mb-3">网络瓶颈</h3>
                    <p class="text-gray-700 text-sm">
                        网络延迟和带宽不足导致的性能问题，常见于分布式系统。
                    </p>
                </div>
                
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <div class="w-12 h-12 bg-green-100 rounded-lg flex items-center justify-center mb-4">
                        <i class="fas fa-database text-green-500 text-xl"></i>
                    </div>
                    <h3 class="text-xl font-semibold mb-3">数据库瓶颈</h3>
                    <p class="text-gray-700 text-sm">
                        查询性能、连接池和锁竞争等问题导致的系统性能下降。
                    </p>
                </div>
                
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <div class="w-12 h-12 bg-purple-100 rounded-lg flex items-center justify-center mb-4">
                        <i class="fas fa-code text-purple-500 text-xl"></i>
                    </div>
                    <h3 class="text-xl font-semibold mb-3">代码瓶颈</h3>
                    <p class="text-gray-700 text-sm">
                        算法复杂度、内存泄漏和线程同步等问题引起的性能问题。
                    </p>
                </div>
            </div>

            <!-- Hardware Bottleneck Details -->
            <div class="mb-12">
                <h3 class="text-2xl font-semibold mb-6 flex items-center">
                    <i class="fas fa-microchip text-red-500 mr-3"></i>
                    2.1 硬件瓶颈
                </h3>
                <div class="grid md:grid-cols-3 gap-6">
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-brain text-red-400 mr-2"></i>
                            CPU瓶颈
                        </h4>
                        <p class="text-sm text-gray-700">
                            通过 CPU 占用率过高来判断系统是否存在 CPU 瓶颈。常见原因包括程序逻辑计算过于复杂，或者存在死循环等。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-memory text-red-400 mr-2"></i>
                            内存瓶颈
                        </h4>
                        <p class="text-sm text-gray-700">
                            内存占用过高可能会导致频繁的垃圾回收，甚至出现 OOM（Out of Memory）错误。通过监控 JVM 的堆内存使用情况，可以帮助定位内存泄漏问题。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-hdd text-red-400 mr-2"></i>
                            磁盘瓶颈
                        </h4>
                        <p class="text-sm text-gray-700">
                            磁盘 IO 操作过多可能导致性能下降。常见的原因包括大量的文件读写或数据库的磁盘访问。
                        </p>
                    </div>
                </div>
            </div>

            <!-- Network Bottleneck Details -->
            <div class="mb-12">
                <h3 class="text-2xl font-semibold mb-6 flex items-center">
                    <i class="fas fa-network-wired text-blue-500 mr-3"></i>
                    2.2 网络瓶颈
                </h3>
                <div class="grid md:grid-cols-2 gap-6">
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-clock text-blue-400 mr-2"></i>
                            网络延迟
                        </h4>
                        <p class="text-sm text-gray-700">
                            系统间的网络延迟过高可能导致请求响应缓慢，尤其是在微服务架构中，服务之间的远程调用可能会受到影响。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-tachometer-alt text-blue-400 mr-2"></i>
                            带宽瓶颈
                        </h4>
                        <p class="text-sm text-gray-700">
                            带宽不足可能会导致数据传输速度过慢，特别是在进行大数据传输时，带宽限制可能成为瓶颈。
                        </p>
                    </div>
                </div>
            </div>

            <!-- Database Bottleneck Details -->
            <div class="mb-12">
                <h3 class="text-2xl font-semibold mb-6 flex items-center">
                    <i class="fas fa-database text-green-500 mr-3"></i>
                    2.3 数据库瓶颈
                </h3>
                <div class="grid md:grid-cols-3 gap-6">
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-search text-green-400 mr-2"></i>
                            查询性能
                        </h4>
                        <p class="text-sm text-gray-700">
                            查询速度过慢，常常是由于缺乏索引、查询语句不优化或者表数据过大导致的。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-plug text-green-400 mr-2"></i>
                            连接池瓶颈
                        </h4>
                        <p class="text-sm text-gray-700">
                            数据库连接池的大小设置不合理，可能导致连接请求排队，影响系统的吞吐量。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-lock text-green-400 mr-2"></i>
                            锁竞争
                        </h4>
                        <p class="text-sm text-gray-700">
                            数据库表的并发操作可能导致锁竞争，尤其是在高并发的情况下，数据库的锁机制可能成为性能瓶颈。
                        </p>
                    </div>
                </div>
            </div>

            <!-- Code Bottleneck Details -->
            <div class="mb-12">
                <h3 class="text-2xl font-semibold mb-6 flex items-center">
                    <i class="fas fa-code text-purple-500 mr-3"></i>
                    2.4 代码瓶颈
                </h3>
                <div class="grid md:grid-cols-3 gap-6">
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-project-diagram text-purple-400 mr-2"></i>
                            复杂算法
                        </h4>
                        <p class="text-sm text-gray-700">
                            某些不优化的算法，例如使用 O(n^2) 时间复杂度的算法，可能导致系统响应缓慢。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-trash-alt text-purple-400 mr-2"></i>
                            内存泄漏
                        </h4>
                        <p class="text-sm text-gray-700">
                            在应用程序中，频繁地创建对象而不释放可能导致内存泄漏，从而增加垃圾回收的负担。
                        </p>
                    </div>
                    <div class="bg-white p-6 rounded-xl shadow-sm">
                        <h4 class="font-medium mb-2 flex items-center">
                            <i class="fas fa-users text-purple-400 mr-2"></i>
                            线程同步问题
                        </h4>
                        <p class="text-sm text-gray-700">
                            线程之间的锁竞争或者死锁问题，可能导致多线程程序的性能下降。
                        </p>
                    </div>
                </div>
            </div>
        </section>

        <!-- Strategies Section -->
        <section id="strategies" class="mb-20">
            <h2 class="text-3xl font-bold mb-8 flex items-center">
                <span class="bg-indigo-100 text-indigo-800 w-10 h-10 rounded-full flex items-center justify-center mr-4">3</span>
                性能优化的常见策略
            </h2>
            
            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-project-diagram text-indigo-500 mr-3"></i>
                        4.1 算法与数据结构优化
                    </h3>
                    <p class="text-gray-700 mb-4">
                        选择合适的算法和数据结构是性能优化的基础。通过优化算法复杂度，可以显著提高应用性能。
                    </p>
                    <div class="space-y-3">
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-sort-amount-down text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">优化排序算法</p>
                                <p class="text-sm text-gray-600">选择 O(n log n) 的排序算法，避免 O(n^2) 的排序算法</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-sitemap text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">使用高效的数据结构</p>
                                <p class="text-sm text-gray-600">选择合适的数据结构来存储和处理数据，例如使用哈希表而不是线性列表来查找元素</p>
                            </div>
                        </div>
                    </div>
                </div>

                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-database text-indigo-500 mr-3"></i>
                        4.2 数据库优化
                    </h3>
                    <p class="text-gray-700 mb-4">
                        数据库瓶颈是影响性能的常见因素，优化数据库可以显著提高性能。
                    </p>
                    <div class="space-y-3">
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-search-plus text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">索引优化</p>
                                <p class="text-sm text-gray-600">为频繁查询的字段创建索引，减少查询的时间</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-database text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">数据库分区</p>
                                <p class="text-sm text-gray-600">对于数据量较大的表，采用分区技术，减少查询的数据量</p>
                            </div>
                        </div>
                    </div>
                </div>

                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-memory text-indigo-500 mr-3"></i>
                        4.3 内存优化
                    </h3>
                    <p class="text-gray-700 mb-4">
                        内存优化能够提高系统的响应速度和稳定性，避免频繁的垃圾回收。
                    </p>
                    <div class="space-y-3">
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-recycle text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">对象池化</p>
                                <p class="text-sm text-gray-600">对于频繁使用的对象，采用对象池来复用，减少内存分配和回收的开销</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-trash-restore text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">垃圾回收调优</p>
                                <p class="text-sm text-gray-600">通过调整 JVM 的垃圾回收器和堆内存设置，减少 GC 的停顿时间</p>
                            </div>
                        </div>
                    </div>
                </div>

                <div class="bg-white p-6 rounded-xl shadow-sm card-hover">
                    <h3 class="text-xl font-semibold mb-4 flex items-center">
                        <i class="fas fa-network-wired text-indigo-500 mr-3"></i>
                        4.4 网络优化
                    </h3>
                    <p class="text-gray-700 mb-4">
                        在网络瓶颈方面，可以通过以下措施来优化性能。
                    </p>
                    <div class="space-y-3">
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-compress-alt text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">压缩数据</p>
                                <p class="text-sm text-gray-600">在数据传输过程中，对数据进行压缩，减少传输的带宽占用</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="bg-indigo-100 text-indigo-800 rounded-full w-6 h-6 flex items-center justify-center flex-shrink-0 mt-1 mr-2">
                                <i class="fas fa-sync-alt text-xs"></i>
                            </div>
                            <div>
                                <p class="font-medium">缓存优化</p>
                                <p class="text-sm text-gray-600">在客户端和服务端使用缓存，减少频繁的网络请求</p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Key Takeaways -->
            <div class="bg-indigo-50 border border-indigo-100 rounded-xl p-6 mb-12">
                <h3 class="text-xl font-semibold mb-4 text-indigo-800 flex items-center">
                    <i class="fas fa-lightbulb text-indigo-600 mr-3"></i>
                    关键启示
                </h3>
                <p class="text-indigo-700 mb-4">
                    性能优化是一个持续的过程，需要从多个维度进行综合考量。通过系统的监控、分析和优化，可以显著提升应用程序的性能和用户体验。
                </p>
                <ul class="space-y-2 text-indigo-700">
                    <li class="flex items-start">
                        <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                        <span>优化应该基于数据驱动，而不是主观臆测</span>
                    </li>
                    <li class="flex items-start">
                        <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                        <span>关注真实场景的性能表现，而不仅仅是基准测试</span>
                    </li>
                    <li class="flex items-start">
                        <i class="fas fa-check-circle text-indigo-500 mt-1 mr-2"></i>
                        <span>性能优化应该是一个持续的过程，而不是一次性工作</span>
                    </li>
                </ul>
            </div>
        </section>

        <!-- Tools Visualization -->
        <section class="mb-20">
            <h2 class="text-3xl font-bold mb-8 flex items-center">
                <span class="bg-indigo-100 text-indigo-800 w-10 h-10 rounded-full flex items-center justify-center mr-4">4</span>
                性能工具图谱
            </h2>
            
            <div class="bg-white p-6 rounded-xl shadow-sm">
                <div class="mermaid">
                    graph LR
                    A[性能监控] --> B[JConsole]
                    A --> C[VisualVM]
                    A --> D[YourKit]
                    E[系统资源监控] --> F[top/htop]
                    E --> G[nmon]
                    E --> H[vmstat]
                    I[数据库监控] --> J[慢查询日志]
                    I --> K[AWR报告]
                    L[压力测试] --> M[JMeter]
                    L --> N[Gatling]
                    O[性能剖析] --> P[JProfiler]
                    O --> Q[VisualVM]
                </div>
            </div>
        </section>
    </div>

    <!-- Footer -->
    <footer class="bg-gray-900 text-gray-300 py-8">
        <div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
            <div class="flex flex-col md:flex-row justify-between items-center">
                <div class="mb-4 md:mb-0">
                    <h3 class="text-lg font-medium text-white">技术小馆</h3>
                    <p class="mt-1 text-sm">探索技术的无限可能</p>
                </div>
                <div>
                    <a href="http://www.yuque.com/jtostring" class="text-indigo-400 hover:text-indigo-300 transition flex items-center">
                        <i class="fas fa-external-link-alt mr-2"></i>
                        http://www.yuque.com/jtostring
                    </a>
                </div>
            </div>
            <div class="mt-8 pt-8 border-t border-gray-800 text-sm text-center">
                © 2023 技术小馆. 保留所有权利.
            </div>
        </div>
    </footer>

    <script>
        mermaid.initialize({
            startOnLoad: true,
            theme: 'default',
            flowchart: {
                useMaxWidth: true,
                htmlLabels: true,
                curve: 'basis'
            },
            themeVariables: {
                primaryColor: '#EDF2F7',
                primaryBorderColor: '#CBD5E0',
                primaryTextColor: '#4A5568',
                lineColor: '#A0AEC0'
            }
        });
    </script>
</body>
</html>
```